export class TokenInfo {
    constructor({
        tokenName,
        tokenValue,
        isLogin,
        loginId,
        loginType,
        tokenTimeout,
        sessionTimeout,
        tokenSessionTimeout,
        tokenActiveTimeout,
        loginDevice,
        tag
    }) {
        // token 相关属性
        this.tokenName = tokenName;             // token 名称
        this.tokenValue = tokenValue;           // token 值
        
        // 登录相关属性
        this.isLogin = isLogin;                 // 是否已登录
        this.loginId = loginId;                 // 登录 ID
        this.loginType = loginType;             // 登录类型
        this.loginDevice = loginDevice;         // 登录设备
        
        // 超时相关属性
        this.tokenTimeout = tokenTimeout;               // token 超时时间
        this.sessionTimeout = sessionTimeout;           // session 超时时间
        this.tokenSessionTimeout = tokenSessionTimeout; // token session 超时时间
        this.tokenActiveTimeout = tokenActiveTimeout;   // token 活跃超时时间
        
        // 其他属性
        this.tag = tag;                         // 标签
    }

    // 可以添加一些实用方法
    isTokenValid() {
        return this.isLogin && this.tokenValue;
    }

    // 获取超时时间（以秒为单位）
    getTokenTimeoutInSeconds() {
        return parseInt(this.tokenTimeout);
    }
}